package org.linlinjava.litemall.db.domain;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@TableName("litemall_recharge_transactions")
@Accessors(chain = true)
public class LitemallRechargeTransactions {

    @TableId(type = IdType.AUTO)
    private Long id; // 主键ID

    private Integer userId; // 用户表的用户ID

    private String cardNo; // 礼物卡编号

    private Integer shopId; // 门店id

    private String username; // 会员账号

    private Byte rechargeType; // 充值类型（余额/礼物卡）

    private Byte payType; // 充值方式（Clover支付/PayPal支付/余额支付[不记录]/礼物卡支付[不记录]/现金充值）

    private BigDecimal rechargeAmount; // 充值金额

    private Byte rechargeSource; // 充值来源（APP/POS）

    @TableField(fill = FieldFill.INSERT) //插入时自动填充
    private LocalDateTime addTime;

    @TableField(fill = FieldFill.UPDATE) // 插入 和 更新时 自动填充
    private LocalDateTime updateTime;

    @TableLogic
    private Integer deleted; // 逻辑删除


}